//车厢调度
#include <iostream>
#include <stack>
using namespace std;
const int MAXN=1000;
int n;
int a[MAXN+1];
stack<int> st;

int main(){
    cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i];
    int k=1;
    for(int i=1;i<=n;i++){
        st.push(i);
        while (!st.empty()){
            if (st.top()==a[k]){
                st.pop();
                k++;
            }else break;
        }
        
    }
        
    if (st.empty()) cout<<"YES";
    else cout<<"NO";
}